/*
Projet ISI - DMP Groupe B5
Marie Livia MERIA, Noémie HERNANDORENA, Alexis TROTEL, Andrès ENCISO, Arthur FOUCHER, Arnaud SAUTIER
Fonctions de vérification côté client
*/

//fonction de coloriage des champs
//P.E :		champ  : le champ que l'on souhaite colorier
//			erreur : booléen indiquant la présence d'une erreur ou non
function colorier(champ, erreur){
   if(erreur){
      champ.style.borderColor = "#F00";
   }
   else{
      champ.style.borderColor = "#0F0";
   }
}

//vérification des champs en fonction du champ, de l'expression régulière et du message souhaité
//P.E :		idchamp 	 : l'id du champ à vérifier
//			reg		 : le regex de vérification du champ
//			message	 : le message à afficher
function verif(idchamp,reg,message){
	var champCOM=document.getElementById('v_'+idchamp);
	var champ=document.getElementById(idchamp);
	var expression=new RegExp(reg);
	if(!expression.test(champ.value)){	
		colorier(champ, true);
		champCOM.innerHTML=message;
      	return false;
	}
	else {
		champCOM.innerHTML="";
    	colorier(champ, false);
		return true;
   }
}

//vérification des champs non obligatoire en fonction du champ, de l'expression régulière et du message souhaité
//P.E :		idchamp 	 : l'id du champ à vérifier
//			reg		 : le regex de vérification du champ
//			message	 : le message à afficher
function veriffacultatif(idchamp,reg,message){
	var champCOM=document.getElementById('v_'+idchamp);
	var champ=document.getElementById(idchamp);
	var expression=new RegExp(reg);
	var expvide=/(^$)|(\s+)/;
	if(expvide.test(champ.value)){
		colorier(champ, false);
		champCOM.innerHTML="";
		return true;
	}
	if(!expression.test(champ.value)){	
		colorier(champ, true);
		champCOM.innerHTML=message;
      	return false;
	}
	else {
		champCOM.innerHTML="";
    	colorier(champ, false);
		return true;
   }
}

//vérification qu'une valeur n'est pas nulle dans une liste
//P.E :		idliste  : l'id de la liste à vérifier
//			message	 : le message à afficher
function verifliste(idliste,message){
	var erreurliste=document.getElementById('v_'+idliste);
	var liste=document.getElementById(idliste);
	if(liste.value==''){	
		erreurliste.innerHTML=message;
      	return false;
	}
	else {
		erreurliste.innerHTML="";
		return true;
   }
}